<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
	<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
	<meta http-equiv="pragma" content="no-cache" />
    <meta name="author" content="Jayli" />
	<meta name="keywords" content="淘宝UED 前端工程师 拔赤" />	
	<meta name="description" content="淘宝前端工程师拔赤，关注尖端前端技术，关注yui" />
	<meta http-equiv="imagetoolbar" content="no" />
	<meta name="title" content="拔赤的文章列表" />
    <title>QCon 2011 后记</title>
    <link href="http://jayli.github.com/blog/atom.xml" rel="alternate" title="setImpl" type="application/atom+xml" />
    <link rel="stylesheet" href="http://jayli.github.com/blog/media/css/style.css">
    <link rel="stylesheet" href="http://jayli.github.com/blog/media/css/github.css">
	<style>
	</style>
    <script type="text/javascript" src="http://jayli.github.com/blog/media/js/highlight.pack.js"></script>
    <script type="text/javascript">
      hljs.initHighlightingOnLoad();
    </script>
	<!--[if lte IE 8]>
	<script src="http://a.tbcdn.cn/apps/lottery/00023/index-v3/js/html5.js"></script>
	<![endif]-->
	<meta name="baidu-tc-verification" content="afb6c9df553ef3493d9ee65263df0d55" />
	<script src="http://siteapp.baidu.com/static/webappservice/uaredirect.js" type="text/javascript"></script><script type="text/javascript">uaredirect("http://m.zoojs.org", "http://jayli.github.com/blog");</script>
  </head>
  <body>
    <div id="container">
      <div id="main" role="main">
        <header>
        <h1>QCon 2011 后记</h1>
        </header>
        <nav>
        <span><a title="home page" class="" href="/blog/index.html">home</a></span>
        <span><a title="tags" class="" href="/blog/tags.html">tags</a></span>
        <span><a title="about" class="" href="/blog/about.html">about me</a></span>
        <span><a title="flickr" class="" href="http://www.flickr.com/photos/lijing00333">flickr</a></span>
        <span><a title="blogroll" class="" href="/blog/links.html">links</a></span>
        <span><a title="projects" class="" href="/blog/projects.html">projects</a></span>
        <span><a title="subscribe me" class="" href="/blog/atom.xml">feed</a></span>
        </nav>
        <article class="content">
        <section class="post">
<p>关于Qcon 2011</p>

<p>之前年初我参加了新版淘宝首页的开发，做了一些html5的实践，正好这次QCon有学鹍主持的html5专题，小马就推荐我去QCon分享一下这方面的心得，所以对我来说，能参加这次QCon很幸运，也很忐忑。一方面，我在html5方面的确算不得专家，另一方面，淘宝在html5实践之路上也在摸着石头过河，不过，感谢学鹍的鼓励，还有澄净、承玉、圆心和完颜的帮助，让我仔细梳理html5实践原则和一些教训，这才有了这个ppt</p>

<iframe src='http://www.slideshare.net/slideshow/embed_code/7576035' width='500' height='410' border=0></iframe>


<p>说起来，这是我第二次参加QCon，之前QCon关于纯粹Web前端的专题很少，就像小马说的，QCon大会是后端开发工程师和架构师的技术大会，不过这次QCon前端的专题一下子增加到了三个，有点小意外。此外，敏捷开发、Java的回归、关于测试和服务器集群优化的专题演讲依然让人收获颇丰。</p>

<p>关于敏捷</p>

<p>这次QCon“敏捷开发”突然就火了起来，当然不是说之前没有“敏捷”，甚至我们每天都在“敏捷”之中。那么，对于前端工程师来讲，有无必要去关注“敏捷”呢？我认为不但要关注，而且要有意识历练自己成为敏捷教练，也就是说前端工程师做不了PM(项目经理)的职位，不代表不能具备PM的能力，如果由前端工程师来驱动项目（比如Kissy的开发和淘宝首页的开发），能不能做到真正的敏捷高效，如何合理的做需求排期、安排迭代开发？这种基本能力应当是每个工程师——当然包括前端工程师——所必备的技能，我想，这也是前端工程师自身发展的一个必由节点。</p>

<p>关于Java</p>

<p>我在QCon上听到关于前端工程师的言论最多的就是，“怎么看，都感觉前端写的代码比不上后端工程师那么专业功底扎实，写出来的东西也没有后端稳重可靠”。尽管这种言论有失偏颇，但也说明了IT行业对前端开发的普遍看法，没错，前端工程师多是半路出家，毕竟入门前端开发实在太简单了，所以我们在招聘前端工程师的时候都会加上一条：至少熟悉一门后端语言（当然熟悉Java更好，淘宝的后台大部分使用Java），如果前端工程师仅仅将关注点放在html/css/js上面，其成长将迅速到达瓶颈，所以，和传统后台开发语言不同，前端的学习曲线是先缓后陡，越到后来越会发现数据结构、设计模式、编译原理、网络协议的重要性，而这些内容，正是传统后端工程师所擅长的。这里不是说前后端之间不容水火，而是掌握全面的知识结构，对于前端工程师的成长百利而无一害。因此，当今天大家重新将目光聚焦在Java身上，重新审视Java时候，对于前端工程师，也要将目光收回，从箱底翻出那些破旧的计算机专业课本，这些东东才是我们更上一层楼的关键所在。</p>

<p>关于测试</p>

<p>测试的话题一直都备受关注，这次QCon就有诸多专家做了这方面的分享，而我更想了解如何做前端测试，遗憾的是，专家的分享依然侧重于测试平台建设和分层测试理论。不过，不管是平台自动化还是分层理论，大家至少有两个共识，第一，对于MVC来讲，对M做测试最容易，对C做测试难度次之，对V做测试最难；第二，代码质量直接影响到测试效率。而需求变化频繁又影响代码质量，似乎注定测试是一个永恒的难题。不过，对于前端来讲，可以先让M可测，再深入搞定C，最后集中精力攻克V的测试难题，当然在这之前，则要先教会小白们如何写出符合MVC的代码。</p>

<p>关于前端开发</p>

<p>这次QCon上三个前端专题基本描述清楚了前端开发的三个发展方向，第一，面向服务器端的JavaScirpt，第二、手持终端，第三、传统前端从html4到html5的进化。我想这种分工是一种必然，当然不是说现在一定是做分工的最佳时机，而是作为前端工程师来讲，应当具有这种危机意识和一定的前瞻性，而不管哪个方向，我们都能看到这个职位对前端工程师专业素养极高的要求。</p>

<p>其实，这次QCon给我带来的思考不止这些，我也非常高兴能把这些体会分享给大家，当然这次QCon上和html5专题的几位讲师（谢子斌、hax、杜欢）的合作相当愉快，学鹍对这个专题也是信心满满，也非常期待和他们的再次合作：</p>

<p><img src="http://ued.taobao.com/blog/wp-content/uploads/2011/04/qcon_html5.jpg" alt="qcon" /></p>

</section>
<section class="meta">

<!--span class="tags">
  tagged by 
  
</span-->

<span class="time">
  posted at <time datetime="2011-04-17">2011-04-17</time>
</span>
</section>

<section class="comment">
<div id="disqus_thread"></div>
<script type="text/javascript">
    /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
    var disqus_shortname = 'jayliblog'; // required: replace example with your forum shortname
	var disqus_identifier = 'urn:uuid:b9a827a7-cff0-46ea-8f34-ef665fee15b5';

    /* * * DON'T EDIT BELOW THIS LINE * * */
    (function() {
        var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
        dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
    })();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
</section>


        </article>
      </div>
    </div> <!--! end of #container -->
  </body>
</html>
